import 'package:flutter/material.dart';
import 'package:ideology/shared/widgets/file_explorer/file_explorer_theme_data.dart';

/// 根据文件名推断并返回对应的默认颜色。
///
/// 规则：
/// - `.dart` → 蓝色（[Colors.blueAccent]）；
/// - 图片格式 `.png` / `.jpg` / `.jpeg` → 绿色（[Colors.green]）；
/// - 配置文件 `.json` / `.yaml` / `.yml` → 橙色（[Colors.orange]）；
/// - Markdown `.md` → 青色（[Colors.teal]）；
/// - 其他 → 使用 [FileExplorerThemeData.fileColorDefault]。
///
/// 参数说明：
/// - [name] 文件名（大小写不敏感）；
/// - [theme] 当前文件浏览器主题，用于提供默认颜色。
///
/// 返回值：
/// - 对应文件类型的 [Color]。
///
/// 使用示例：
/// ```dart
/// final color = defaultFileColor('readme.md', theme);
/// // 返回 Colors.teal
/// ```
Color defaultFileColor(String name, FileExplorerThemeData theme) {
  final lower = name.toLowerCase();
  if (lower.endsWith('.dart')) return Colors.blueAccent;
  if (lower.endsWith('.png') ||
      lower.endsWith('.jpg') ||
      lower.endsWith('.jpeg')) {
    return Colors.green;
  }
  if (lower.endsWith('.json') ||
      lower.endsWith('.yaml') ||
      lower.endsWith('.yml')) {
    return Colors.orange;
  }
  if (lower.endsWith('.md')) return Colors.teal;
  return theme.fileColorDefault;
}
